1 CLS :DEFDBL F,C,H,X:PRINT"DIFFROOTS-boot with OLD BASIC to enable MERGE of problem equations." : PRINT "FOR ROOTS OF SINGLE EQU. USE LINE 10" : PRINT
2 PRINT "FOR SIMULTANEOUS EQUATIONS" : PRINT "ENTER YOUR EQUATIONS AS FOLLOWS:"
120 IF D1=1 THEN INPUT "SIMULTANEOUS? (Y/N)" ; T$ : IF LEFT$(T$,1)="Y" THEN INPUT "HOW MANY? (2/3/4)" ; SS : IF SS<2 OR SS>4 THEN GOTO 120
130 IF D1=1 THEN PRINT : FOR SI=1 TO SS : PRINT "DIFF ORDER IN SUB-SET" ; SI ; "? (0/1/2/3/4)" ; : INPUT D0(SI) : NEXT SI : GOSUB 700 : GOTO 145
140 INPUT "NR OF EQUATIONS" ; N : NN=N : N=N-1
145 INPUT "CONSTANTS? (Y/N)" ; T$ : IF LEFT$(T$,1)="Y" THEN INPUT "HOW MANY" ; G : DIM G(G) : FOR I=0 TO G-1 : PRINT "G(" ; I ; ")=" ; : INPUT G(I) : NEXT I
155 INPUT "DECIM ACCUR=" ; D : INPUT "NR OF ITERATIONS=" ; M
160 IF D1=0 THEN GOTO 170
165 NN=NN-5 : FOR I=0 TO NN : S1(I)=1 : S(I)=-1 : X(I)=0 : X2(I)=X(I) : NEXT I : FOR I=0 TO N : A1(I)=AA(I) : A(I)=AA(I) : NEXT I : GOTO 220
170 FOR I=0 TO N : PRINT "X(" ; I ; ")=" ; : INPUT X(I) : X2(I)=X(I) : NEXT I
180 FOR I=0 TO N : PRINT "R(" ; I ; ")=" ; : INPUT R(I) : R1(I)=R(I) : NEXT I
190 FOR I=0 TO N : S1(I)=1 : P(I)=0 : A(I)=I : A1(I)=I : NEXT I
200 K1=0 : K2=0 : IF N=0 THEN INPUT "FINE SEARCH? (Y/N)" ; T$ : IF LEFT$(T$,1)="Y" THEN INPUT "SEARCH INCREMENT=" ; L : K1=1 : K2=1
210 IF N=0 THEN INPUT "SIGN F(0)=" ; S(0) : IF K1=1 THEN PRINT : PRINT " F(X)" ; TAB(26) ; "X" : PRINT : GOSUB 325 : GOTO 270
215 IF N=0 THEN GOSUB 320 : GOTO 270
220 INPUT "RE-ARRANGE EQUATIONS? (Y/N)" ; T$ : IF LEFT$(T$,1)="N" THEN GOTO 250
230 IF D1=1 THEN GOSUB 1000 : GOTO 260
240 PRINT "ENTER EQUATION SEQUENCE" : PRINT : PRINT "ORIGINAL F( ) " , "NEW SEQUENCE" : FOR I=0 TO N : PRINT I , : INPUT A(I) : NEXT I
250 IF D1=0 THEN INPUT "SIGN SEARCH? (Y/N)" ; SS$ : IF LEFT$(SS$,1)="Y" THEN GOSUB 600 : GOTO 240
260 IF D1=1 THEN GOSUB 1100 : GOSUB 300 : GOTO 280
270 FOR I=0 TO N : PRINT "SIGN F(" ; I ; ")=" ; : INPUT S(I) : NEXT I : FOR I2=0 TO N : I=A(I2) : X(I)=X2(I) : R(I)=R1(I2) : S1(I)=1 : P(I)=0 : NEXT I2 : GOSUB 300 : IF N=0 THEN GOTO 270
275 GOTO 220
280 FOR I2=0 TO N : I=A(I2) : X(I)=X2(I) : R(I)=R1(I2) : S1(I)=1 : P(I)=0 : NEXT I2 : GOSUB 800 : IF LEFT$(T$,1)="S" THEN GOSUB 1500 : GOTO 220
285 IF C7=0 THEN PRINT : IF LEFT$(T$,1)="C" THEN GOSUB 1600
290 GOSUB 300 : GOTO 280
300 PRINT : PRINT : PRINT "SIGN COMB." ; : IF D1=1 THEN GOSUB 1300 : GOTO 310
305 FOR I=0 TO N : PRINT TAB(4*I+12) ; S(I) ; : NEXT I : PRINT
310 PRINT : PRINT "EQU. SEQU." ; : IF D1=1 THEN GOSUB 1400 : GOTO 320
315 FOR I=0 TO N : PRINT TAB(4*I+12) ; A(I) ; : NEXT I : PRINT